Salesforce-এ Relationship গঠন করা একটি গুরুত্বপূর্ণ বিষয়, কারণ এটি Object গুলোর মধ্যে সংযোগ স্থাপন করে এবং ডেটার মধ্যে Parent-Child বা Association গড়ে তোলে। Salesforce-এ প্রধানত দুটি ধরনের Relationship রয়েছে: Master-Detail Relationship এবং Lookup Relationship। প্রতিটি Relationship-এর নিজস্ব বৈশিষ্ট্য এবং ব্যবহার রয়েছে। নিচে এই Relationship গুলো সম্পর্কে বিস্তারিতভাবে ব্যাখ্যা করা হলো।
১. Master-Detail Relationship
Master-Detail Relationship হলো একটি Parent-Child সম্পর্ক যা Salesforce Object এর মধ্যে গড়ে ওঠে। এখানে, Parent Object কে Master এবং Child Object কে Detail বলা হয়।
Master-Detail Relationship-এর বৈশিষ্ট্য:
- Parent-Dependent: Child (Detail) রেকর্ড Parent (Master) রেকর্ডের উপর নির্ভরশীল। Parent রেকর্ড মুছে দিলে, Child রেকর্ডও স্বয়ংক্রিয়ভাবে মুছে যাবে (Cascade Delete)।
- Roll-up Summary Fields: Master Object এ Roll-up Summary Field ব্যবহার করা যায়, যা Child রেকর্ডের ডেটা (যেমন: গাণিতিক মান, সংখ্যা, ইত্যাদি) গণনা করে দেখাতে পারে।
- Security & Sharing: Parent Object এর Security এবং Sharing Setting অনুযায়ী Child রেকর্ডের Access কন্ট্রোল করা হয়। Child Object এর জন্য আলাদা Security Setting প্রয়োজন হয় না।
- Required Relationship: Child Object এ Master-Detail Relationship Field তৈরি করা হলে, এটি একটি Required Field হয়। অর্থাৎ, কোনো Child রেকর্ড Parent রেকর্ড ছাড়া থাকতে পারে না।
Master-Detail Relationship তৈরির ধাপ:
- Object Manager-এ যান: Salesforce Setup-এ Object Manager-এ লগইন করুন এবং Detail (Child) Object নির্বাচন করুন।
- Fields & Relationships ট্যাবে যান: "Fields & Relationships" সেকশনে ক্লিক করুন এবং "New" বাটনে ক্লিক করুন।
- Master-Detail Relationship নির্বাচন করুন: Relationship টাইপ হিসেবে "Master-Detail Relationship" সিলেক্ট করুন এবং Next ক্লিক করুন।
- Master Object নির্বাচন করুন: Parent Object বা Master Object নির্বাচন করুন যার সাথে Relationship তৈরি করতে চান।
- Field Properties নির্ধারণ করুন: Field Name, Label, এবং অন্যান্য প্রয়োজনীয় সেটিংস কনফিগার করুন।
- Field Level Security এবং Page Layout নির্ধারণ করুন: এই Field কিভাবে প্রদর্শিত হবে এবং কোন প্রোফাইল Access পাবে তা নির্ধারণ করুন।
- Save করুন: Save বাটনে ক্লিক করুন এবং Master-Detail Relationship গঠন সম্পন্ন করুন।
২. Lookup Relationship
Lookup Relationship হলো একটি লুজলি-কাপলড (loosely coupled) সম্পর্ক, যা Salesforce Object এর মধ্যে তৈরি করা হয়। এটি Parent-Child সম্পর্ক নয়, বরং দুটি Object এর মধ্যে সংযোগ স্থাপন করে যেখানে Child রেকর্ড Parent রেকর্ডের উপর সম্পূর্ণ নির্ভরশীল নয়।
Lookup Relationship-এর বৈশিষ্ট্য:
- Optional Dependency: Parent রেকর্ড মুছে ফেললেও Child রেকর্ড মুছে যায় না (Cascade Delete প্রযোজ্য নয়)। Child রেকর্ড Parent রেকর্ড ছাড়াও থাকতে পারে।
- Independent Security: Child Object এর জন্য Parent Object এর Security বা Sharing Setting প্রযোজ্য হয় না। Child Object-এর নিজস্ব Security সেট করা থাকে।
- Multiple Lookup Fields: একটি Object এ একাধিক Lookup Relationship থাকতে পারে, যেখানে প্রতিটি ভিন্ন Parent Object এর সাথে সংযোগ স্থাপন করতে পারে।
- Optional Field: Lookup Field সাধারণত Required Field হয় না, তাই এটি খালি থাকতে পারে।
Lookup Relationship তৈরির ধাপ:
- Object Manager-এ যান: Salesforce Setup-এ Object Manager-এ যান এবং যে Object-এ আপনি Lookup Relationship তৈরি করতে চান সেটি নির্বাচন করুন।
- Fields & Relationships ট্যাবে যান: "Fields & Relationships" সেকশনে ক্লিক করুন এবং "New" বাটনে ক্লিক করুন।
- Lookup Relationship নির্বাচন করুন: Relationship টাইপ হিসেবে "Lookup Relationship" সিলেক্ট করুন এবং Next ক্লিক করুন।
- Parent Object নির্বাচন করুন: যে Parent Object-এর সাথে সংযোগ স্থাপন করতে চান, সেটি নির্বাচন করুন।
- Field Properties নির্ধারণ করুন: Field Name, Label, এবং অন্যান্য প্রয়োজনীয় সেটিংস কনফিগার করুন।
- Field Level Security এবং Page Layout নির্ধারণ করুন: Field কিভাবে প্রদর্শিত হবে এবং কোন প্রোফাইল Access পাবে তা নির্ধারণ করুন।
- Save করুন: Save বাটনে ক্লিক করুন এবং Lookup Relationship গঠন সম্পন্ন করুন।
Master-Detail এবং Lookup Relationship-এর তুলনা:
| বৈশিষ্ট্য | Master-Detail Relationship | Lookup Relationship |
|---|---|---|
| Dependency | Child রেকর্ড Parent রেকর্ডের উপর সম্পূর্ণ নির্ভরশীল। | Child রেকর্ড Parent রেকর্ডের উপর নির্ভরশীল নয়। |
| Cascade Delete | Parent রেকর্ড ডিলিট করলে Child রেকর্ডও ডিলিট হয়। | Parent রেকর্ড ডিলিট করলে Child রেকর্ড ডিলিট হয় না। |
| Roll-up Summary | Roll-up Summary Fields Parent Object-এ ব্যবহার করা যায়। | Roll-up Summary Fields সমর্থিত নয়। |
| Security Control | Parent Object এর Security এবং Sharing Settings প্রযোজ্য। | Child Object-এর নিজস্ব Security এবং Sharing Settings থাকে। |
| Field Requirement | Child Object-এ Master-Detail Relationship Field বাধ্যতামূলক। | Lookup Relationship Field সাধারণত ঐচ্ছিক। |
উপসংহার
Salesforce-এ Master-Detail এবং Lookup দুটি গুরুত্বপূর্ণ Relationship যা Object-এর মধ্যে সংযোগ স্থাপন করে এবং ডেটার গঠনকে আরও কার্যকর করে তোলে। Master-Detail Relationship Parent-Child সম্পর্ক এবং কন্ট্রোলড ডেটা কাঠামোর জন্য ব্যবহৃত হয়, যেখানে Lookup Relationship বেশি ফ্লেক্সিবল এবং বিভিন্ন Object এর মধ্যে সংযোগ স্থাপনে সহায়ক।
Read more